﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using BookStore.Admin.Models;
using System.Data;
namespace BookStore.Admin.Controllers
{
    [HandleError]
    public class LoginController : Controller
    {
        // view login
        public ActionResult index()
        {
            if (Session["Session_Admin"] != null)
            {
                // chuyen den trang logon
                Response.Redirect("/admin/home/index");
            }
            int temp = 0, dk = 0;
            if (this.Request.Form.Count != 0)
            {

                UsersModel tbAccount = new UsersModel();
                string user = Server.HtmlEncode(this.Request.Form["username"]);
                string pass = Server.HtmlEncode(this.Request.Form["password"]);

                temp = tbAccount.Check_User(user);
                if (temp != -1 && temp != -2)
                {
                    dk = tbAccount.Check_Pass(Utils.GetMD5Hash(pass), temp);
                    if (dk == 1)
                    {
                        int user_id = tbAccount.getUserIDByUserName(user);
                        string[] detail_user = tbAccount.getDetailUserById(Convert.ToInt32(user_id));
                        this.Session["Session_Admin"] = user_id;
                        this.Session["Admin_Type"] = detail_user[6].ToString();

                        Response.Redirect("/admin/home/index");
                    }
                    else
                    {
                        if (dk == -1)
                        {
                            ViewData["error"] = "Tên đăng nhập hoặc mật khẩu không đúng";
                        }
                        else if (dk == -2)
                        {
                            ViewData["error"] = "Tài khoản chưa active.Vui lòng kiểm tra email";
                        }
                        else if (dk == -3)
                        {
                            ViewData["error"] = "Tài Khoản không có quyền hạn truy cập";
                        }
                        else if (dk == -4)
                        {
                            ViewData["error"] = "Tài Khoản đã bị khóa.Vui lòng trở lại sau";
                        }
            
                    }
                }
                else
                {
                    if (temp == -1)
                    {
                        ViewData["error"] = "Tên đăng nhập hoặc mật khẩu không đúng";
                    }
                    else if (temp == -2)
                    {
                        ViewData["error"] = "Tài khoản chưa active.Vui lòng kiểm tra email";
                    }

                }


            }
            return View();
        }

        //check validate and check exist in database
        
        // delete session
        public ActionResult Logout()
        {
            if (Session["Session_Admin"] != null)
            {
                // chuyen den trang logon
                Session.Contents.Remove("Session_Admin");
            }
            Response.Redirect("/admin/login");
            return View();
        }
       
       
    }
}
